home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
vol_200
/
295_01
/
blkio.rme
< prev
next >
Wrap
Text File
|
1989-12-28
|
9KB
|
261 lines
----------------------------------------------------------------------
| Citadel |
| 241 East Eleventh Street * Brookville, IN 47012 * 317-647-4720 |
| BBS 317-647-2403 |
----------------------------------------------------------------------
blkio is distributed in a single compressed file blkioRL.zip; R and L
would be the release and level numbers, respectively. The ZIP data
compression utilities are needed to extract the individual files.
The following files are obtained by decompressing blkioRL.zip:
blkio.rme preliminary information
rlsnotes.txt release notes
*.h blkio header files
*.c blkio source files
blkio.rsp Borland response file for building the library
install.bat MS-DOS installation batch file
makefile UNIX makefile
manxRL.zip manual entry extraction utility
The original file blkioRL.zip should be saved if you wish to pass on
copies of blkio. blkio may not be distributed as individual files, or
in an incomplete or altered form.
Citadel 89-10
----------------------------------------------------------------------
| blkio - block buffered i/o library |
| Version 1.1 |
----------------------------------------------------------------------
BLKIO
The blkio library is a buffered input/output library for C similar to
the stdio library but designed for use with structured files. The LRU
(least recently used) replacement algorithm is used for buffering.
The reference manual is embedded in the source code (see INSTALLATION
INSTRUCTIONS). For additional information on using the library, see
the article "A Buffered I/O Library for Structured Files" in the
October 1989 issue (volume 7 number 7) of "The C Users Journal."
Technical support for the blkio library can be obtained on the Citadel
BBS.
The blkio library is a component of cbase, a C database library
developed at Citadel. The current version of cbase as well as blkio
can be downloaded from the Citadel BBS.
======================================================================
COPYRIGHT
Copyright (c) 1989 Citadel.
The blkio library has been released into the public domain subject to
the following restrictions:
- No fee is charged for use, copying, or distribution.
- It may not be distributed in an incomplete or altered
form. This file is included in these restrictions.
- Clubs and user groups may charge a nominal fee not to exceed
$10 for expenses and handling while distributing blkio.
These restrictions are in no way intended to discourage the use of
this library for commercial packages.
======================================================================
DISCLAIMER
Citadel hereby disclaims all warranties relating to this
software, whether express or implied, including without
limitation any implied warranties of merchantibility or fitness
for a particular purpose. Citadel shall not be liable to anyone
for any special, incidental, consequential, indirect, or similar
damages due to loss of data or any other reason, even if Citadel
or an agent of Citadel has been advised of the possibility of
such damages.
======================================================================
Citadel 89-10
INSTALLATION INSTRUCTIONS
To select the host operating system, set the HOST macro in the private
header file blkio_.h. The modifications necessary to port cbase to a
new operating system are straightforward, consisting mostly of direct
translations of system calls such as open, close, and lseek. All
operating system dependent code is located in the files buops.c and
lockb.c.
If using MS-DOS, also set the MSDOSC macro in blkio_.h to the C
compiler being used. The modifications necessary to port to a new C
compiler should be minimal, consisting only of translations of header
file names and macro names such as those used by open and lseek.
Because of the lack of uniformity among MS-DOS C compilers, exact
installation procedures for this operating system vary. The supplied
batch file install.bat is written for Borland Turbo C. Instructions
for modifying this batch file for other compilers are given at the
beginning of install.bat
Before proceeding, the manx utility must be installed.
UNIX
1. Install the boolean header file.
$ su
# cp bool.h /usr/include
# ^D
2. Extract and print the reference manual.
$ make man
$ lp blkio.man
3. Build the blkio library. (Examine the makerec file
afterward for warnings.)
$ make blkio > makerec
4. Install the blkio library. This will copy the blkio
header file blkio.h to /usr/include and the blkio
library archive to /usr/lib.
$ su
# make install
# ^D
MS-DOS
1. If necessary, modify install.bat for the C compiler
being used.
2. Install the blkio library and print the reference manual.
> install
> print blkio.man
======================================================================
Citadel 89-10
----------------------------------------------------------------------
| cbase - C database library |
| Version 1.0 |
----------------------------------------------------------------------
cbase is a C database file management library. B+-trees are used for
indexed and sequential record access. cbase features a truly modular
design and provides a logical and consistent interface. The figure
below shows the individual libraries included with cbase and their
relationships. Each of these is complete and may be used
independently.
-----------------------------------
| cbase |
-----------------------------------
| |
----------------- -----------------
| lseq | | btree |
----------------- -----------------
| |
-----------------------------------
| blkio |
-----------------------------------
cbase and Underlying Libraries
cbase - C database library
btree - B+-tree file management library
lseq - doubly linked sequential file management library
blkio - block buffered i/o library
Extremely portable:
- Written in strict adherence to ANSI C standard.
- K&R C compatibility maintained.
- All operating system dependent code is isolated to a small portion
of the blkio library to make porting to new systems easy.
- All source code is included.
- UNIX and MS-DOS currently supported.*
Completely buffered:
- Both records and indexes are buffered using LRU (least recently
used) buffering.
Fast and efficient sequential access:
- Records are stored in doubly linked lists for non-keyed sequential
access.
- Indexes are stored in B+-trees to allow keyed sequential access.
- Both types of sequential access are bidirectional.
Fast and efficient random access:
- B+-trees are used for inverted file key storage.
- Multiple keys are supported.
- Both unique and duplicate keys are supported.
Citadel 89-10
Multiuser:
- Read-only locking.
Other:
- Easy to add custom data types.